package com.waypolice.pojo;

import java.util.ArrayList;
import java.util.Date;
import java.util.Iterator;
import java.util.List;

public class CmsStudymanagesExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public CmsStudymanagesExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        protected void addCriterionForJDBCDate(String condition, Date value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            addCriterion(condition, new java.sql.Date(value.getTime()), property);
        }

        protected void addCriterionForJDBCDate(String condition, List<Date> values, String property) {
            if (values == null || values.size() == 0) {
                throw new RuntimeException("Value list for " + property + " cannot be null or empty");
            }
            List<java.sql.Date> dateList = new ArrayList<java.sql.Date>();
            Iterator<Date> iter = values.iterator();
            while (iter.hasNext()) {
                dateList.add(new java.sql.Date(iter.next().getTime()));
            }
            addCriterion(condition, dateList, property);
        }

        protected void addCriterionForJDBCDate(String condition, Date value1, Date value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            addCriterion(condition, new java.sql.Date(value1.getTime()), new java.sql.Date(value2.getTime()), property);
        }

        public Criteria andStuIdIsNull() {
            addCriterion("STU_ID is null");
            return (Criteria) this;
        }

        public Criteria andStuIdIsNotNull() {
            addCriterion("STU_ID is not null");
            return (Criteria) this;
        }

        public Criteria andStuIdEqualTo(String value) {
            addCriterion("STU_ID =", value, "stuId");
            return (Criteria) this;
        }

        public Criteria andStuIdNotEqualTo(String value) {
            addCriterion("STU_ID <>", value, "stuId");
            return (Criteria) this;
        }

        public Criteria andStuIdGreaterThan(String value) {
            addCriterion("STU_ID >", value, "stuId");
            return (Criteria) this;
        }

        public Criteria andStuIdGreaterThanOrEqualTo(String value) {
            addCriterion("STU_ID >=", value, "stuId");
            return (Criteria) this;
        }

        public Criteria andStuIdLessThan(String value) {
            addCriterion("STU_ID <", value, "stuId");
            return (Criteria) this;
        }

        public Criteria andStuIdLessThanOrEqualTo(String value) {
            addCriterion("STU_ID <=", value, "stuId");
            return (Criteria) this;
        }

        public Criteria andStuIdLike(String value) {
            addCriterion("STU_ID like", value, "stuId");
            return (Criteria) this;
        }

        public Criteria andStuIdNotLike(String value) {
            addCriterion("STU_ID not like", value, "stuId");
            return (Criteria) this;
        }

        public Criteria andStuIdIn(List<String> values) {
            addCriterion("STU_ID in", values, "stuId");
            return (Criteria) this;
        }

        public Criteria andStuIdNotIn(List<String> values) {
            addCriterion("STU_ID not in", values, "stuId");
            return (Criteria) this;
        }

        public Criteria andStuIdBetween(String value1, String value2) {
            addCriterion("STU_ID between", value1, value2, "stuId");
            return (Criteria) this;
        }

        public Criteria andStuIdNotBetween(String value1, String value2) {
            addCriterion("STU_ID not between", value1, value2, "stuId");
            return (Criteria) this;
        }

        public Criteria andSubjectIsNull() {
            addCriterion("SUBJECT is null");
            return (Criteria) this;
        }

        public Criteria andSubjectIsNotNull() {
            addCriterion("SUBJECT is not null");
            return (Criteria) this;
        }

        public Criteria andSubjectEqualTo(String value) {
            addCriterion("SUBJECT =", value, "subject");
            return (Criteria) this;
        }

        public Criteria andSubjectNotEqualTo(String value) {
            addCriterion("SUBJECT <>", value, "subject");
            return (Criteria) this;
        }

        public Criteria andSubjectGreaterThan(String value) {
            addCriterion("SUBJECT >", value, "subject");
            return (Criteria) this;
        }

        public Criteria andSubjectGreaterThanOrEqualTo(String value) {
            addCriterion("SUBJECT >=", value, "subject");
            return (Criteria) this;
        }

        public Criteria andSubjectLessThan(String value) {
            addCriterion("SUBJECT <", value, "subject");
            return (Criteria) this;
        }

        public Criteria andSubjectLessThanOrEqualTo(String value) {
            addCriterion("SUBJECT <=", value, "subject");
            return (Criteria) this;
        }

        public Criteria andSubjectLike(String value) {
            addCriterion("SUBJECT like", value, "subject");
            return (Criteria) this;
        }

        public Criteria andSubjectNotLike(String value) {
            addCriterion("SUBJECT not like", value, "subject");
            return (Criteria) this;
        }

        public Criteria andSubjectIn(List<String> values) {
            addCriterion("SUBJECT in", values, "subject");
            return (Criteria) this;
        }

        public Criteria andSubjectNotIn(List<String> values) {
            addCriterion("SUBJECT not in", values, "subject");
            return (Criteria) this;
        }

        public Criteria andSubjectBetween(String value1, String value2) {
            addCriterion("SUBJECT between", value1, value2, "subject");
            return (Criteria) this;
        }

        public Criteria andSubjectNotBetween(String value1, String value2) {
            addCriterion("SUBJECT not between", value1, value2, "subject");
            return (Criteria) this;
        }

        public Criteria andSubmitterIsNull() {
            addCriterion("SUBMITTER is null");
            return (Criteria) this;
        }

        public Criteria andSubmitterIsNotNull() {
            addCriterion("SUBMITTER is not null");
            return (Criteria) this;
        }

        public Criteria andSubmitterEqualTo(String value) {
            addCriterion("SUBMITTER =", value, "submitter");
            return (Criteria) this;
        }

        public Criteria andSubmitterNotEqualTo(String value) {
            addCriterion("SUBMITTER <>", value, "submitter");
            return (Criteria) this;
        }

        public Criteria andSubmitterGreaterThan(String value) {
            addCriterion("SUBMITTER >", value, "submitter");
            return (Criteria) this;
        }

        public Criteria andSubmitterGreaterThanOrEqualTo(String value) {
            addCriterion("SUBMITTER >=", value, "submitter");
            return (Criteria) this;
        }

        public Criteria andSubmitterLessThan(String value) {
            addCriterion("SUBMITTER <", value, "submitter");
            return (Criteria) this;
        }

        public Criteria andSubmitterLessThanOrEqualTo(String value) {
            addCriterion("SUBMITTER <=", value, "submitter");
            return (Criteria) this;
        }

        public Criteria andSubmitterLike(String value) {
            addCriterion("SUBMITTER like", value, "submitter");
            return (Criteria) this;
        }

        public Criteria andSubmitterNotLike(String value) {
            addCriterion("SUBMITTER not like", value, "submitter");
            return (Criteria) this;
        }

        public Criteria andSubmitterIn(List<String> values) {
            addCriterion("SUBMITTER in", values, "submitter");
            return (Criteria) this;
        }

        public Criteria andSubmitterNotIn(List<String> values) {
            addCriterion("SUBMITTER not in", values, "submitter");
            return (Criteria) this;
        }

        public Criteria andSubmitterBetween(String value1, String value2) {
            addCriterion("SUBMITTER between", value1, value2, "submitter");
            return (Criteria) this;
        }

        public Criteria andSubmitterNotBetween(String value1, String value2) {
            addCriterion("SUBMITTER not between", value1, value2, "submitter");
            return (Criteria) this;
        }

        public Criteria andStuSignIsNull() {
            addCriterion("STU_SIGN is null");
            return (Criteria) this;
        }

        public Criteria andStuSignIsNotNull() {
            addCriterion("STU_SIGN is not null");
            return (Criteria) this;
        }

        public Criteria andStuSignEqualTo(String value) {
            addCriterion("STU_SIGN =", value, "stuSign");
            return (Criteria) this;
        }

        public Criteria andStuSignNotEqualTo(String value) {
            addCriterion("STU_SIGN <>", value, "stuSign");
            return (Criteria) this;
        }

        public Criteria andStuSignGreaterThan(String value) {
            addCriterion("STU_SIGN >", value, "stuSign");
            return (Criteria) this;
        }

        public Criteria andStuSignGreaterThanOrEqualTo(String value) {
            addCriterion("STU_SIGN >=", value, "stuSign");
            return (Criteria) this;
        }

        public Criteria andStuSignLessThan(String value) {
            addCriterion("STU_SIGN <", value, "stuSign");
            return (Criteria) this;
        }

        public Criteria andStuSignLessThanOrEqualTo(String value) {
            addCriterion("STU_SIGN <=", value, "stuSign");
            return (Criteria) this;
        }

        public Criteria andStuSignLike(String value) {
            addCriterion("STU_SIGN like", value, "stuSign");
            return (Criteria) this;
        }

        public Criteria andStuSignNotLike(String value) {
            addCriterion("STU_SIGN not like", value, "stuSign");
            return (Criteria) this;
        }

        public Criteria andStuSignIn(List<String> values) {
            addCriterion("STU_SIGN in", values, "stuSign");
            return (Criteria) this;
        }

        public Criteria andStuSignNotIn(List<String> values) {
            addCriterion("STU_SIGN not in", values, "stuSign");
            return (Criteria) this;
        }

        public Criteria andStuSignBetween(String value1, String value2) {
            addCriterion("STU_SIGN between", value1, value2, "stuSign");
            return (Criteria) this;
        }

        public Criteria andStuSignNotBetween(String value1, String value2) {
            addCriterion("STU_SIGN not between", value1, value2, "stuSign");
            return (Criteria) this;
        }

        public Criteria andStuFileAddressIsNull() {
            addCriterion("STU_FILE_ADDRESS is null");
            return (Criteria) this;
        }

        public Criteria andStuFileAddressIsNotNull() {
            addCriterion("STU_FILE_ADDRESS is not null");
            return (Criteria) this;
        }

        public Criteria andStuFileAddressEqualTo(String value) {
            addCriterion("STU_FILE_ADDRESS =", value, "stuFileAddress");
            return (Criteria) this;
        }

        public Criteria andStuFileAddressNotEqualTo(String value) {
            addCriterion("STU_FILE_ADDRESS <>", value, "stuFileAddress");
            return (Criteria) this;
        }

        public Criteria andStuFileAddressGreaterThan(String value) {
            addCriterion("STU_FILE_ADDRESS >", value, "stuFileAddress");
            return (Criteria) this;
        }

        public Criteria andStuFileAddressGreaterThanOrEqualTo(String value) {
            addCriterion("STU_FILE_ADDRESS >=", value, "stuFileAddress");
            return (Criteria) this;
        }

        public Criteria andStuFileAddressLessThan(String value) {
            addCriterion("STU_FILE_ADDRESS <", value, "stuFileAddress");
            return (Criteria) this;
        }

        public Criteria andStuFileAddressLessThanOrEqualTo(String value) {
            addCriterion("STU_FILE_ADDRESS <=", value, "stuFileAddress");
            return (Criteria) this;
        }

        public Criteria andStuFileAddressLike(String value) {
            addCriterion("STU_FILE_ADDRESS like", value, "stuFileAddress");
            return (Criteria) this;
        }

        public Criteria andStuFileAddressNotLike(String value) {
            addCriterion("STU_FILE_ADDRESS not like", value, "stuFileAddress");
            return (Criteria) this;
        }

        public Criteria andStuFileAddressIn(List<String> values) {
            addCriterion("STU_FILE_ADDRESS in", values, "stuFileAddress");
            return (Criteria) this;
        }

        public Criteria andStuFileAddressNotIn(List<String> values) {
            addCriterion("STU_FILE_ADDRESS not in", values, "stuFileAddress");
            return (Criteria) this;
        }

        public Criteria andStuFileAddressBetween(String value1, String value2) {
            addCriterion("STU_FILE_ADDRESS between", value1, value2, "stuFileAddress");
            return (Criteria) this;
        }

        public Criteria andStuFileAddressNotBetween(String value1, String value2) {
            addCriterion("STU_FILE_ADDRESS not between", value1, value2, "stuFileAddress");
            return (Criteria) this;
        }

        public Criteria andStuSignDeleteIsNull() {
            addCriterion("STU_SIGN_DELETE is null");
            return (Criteria) this;
        }

        public Criteria andStuSignDeleteIsNotNull() {
            addCriterion("STU_SIGN_DELETE is not null");
            return (Criteria) this;
        }

        public Criteria andStuSignDeleteEqualTo(String value) {
            addCriterion("STU_SIGN_DELETE =", value, "stuSignDelete");
            return (Criteria) this;
        }

        public Criteria andStuSignDeleteNotEqualTo(String value) {
            addCriterion("STU_SIGN_DELETE <>", value, "stuSignDelete");
            return (Criteria) this;
        }

        public Criteria andStuSignDeleteGreaterThan(String value) {
            addCriterion("STU_SIGN_DELETE >", value, "stuSignDelete");
            return (Criteria) this;
        }

        public Criteria andStuSignDeleteGreaterThanOrEqualTo(String value) {
            addCriterion("STU_SIGN_DELETE >=", value, "stuSignDelete");
            return (Criteria) this;
        }

        public Criteria andStuSignDeleteLessThan(String value) {
            addCriterion("STU_SIGN_DELETE <", value, "stuSignDelete");
            return (Criteria) this;
        }

        public Criteria andStuSignDeleteLessThanOrEqualTo(String value) {
            addCriterion("STU_SIGN_DELETE <=", value, "stuSignDelete");
            return (Criteria) this;
        }

        public Criteria andStuSignDeleteLike(String value) {
            addCriterion("STU_SIGN_DELETE like", value, "stuSignDelete");
            return (Criteria) this;
        }

        public Criteria andStuSignDeleteNotLike(String value) {
            addCriterion("STU_SIGN_DELETE not like", value, "stuSignDelete");
            return (Criteria) this;
        }

        public Criteria andStuSignDeleteIn(List<String> values) {
            addCriterion("STU_SIGN_DELETE in", values, "stuSignDelete");
            return (Criteria) this;
        }

        public Criteria andStuSignDeleteNotIn(List<String> values) {
            addCriterion("STU_SIGN_DELETE not in", values, "stuSignDelete");
            return (Criteria) this;
        }

        public Criteria andStuSignDeleteBetween(String value1, String value2) {
            addCriterion("STU_SIGN_DELETE between", value1, value2, "stuSignDelete");
            return (Criteria) this;
        }

        public Criteria andStuSignDeleteNotBetween(String value1, String value2) {
            addCriterion("STU_SIGN_DELETE not between", value1, value2, "stuSignDelete");
            return (Criteria) this;
        }

        public Criteria andStuCreateDateIsNull() {
            addCriterion("STU_CREATE_DATE is null");
            return (Criteria) this;
        }

        public Criteria andStuCreateDateIsNotNull() {
            addCriterion("STU_CREATE_DATE is not null");
            return (Criteria) this;
        }

        public Criteria andStuCreateDateEqualTo(Date value) {
            addCriterionForJDBCDate("STU_CREATE_DATE =", value, "stuCreateDate");
            return (Criteria) this;
        }

        public Criteria andStuCreateDateNotEqualTo(Date value) {
            addCriterionForJDBCDate("STU_CREATE_DATE <>", value, "stuCreateDate");
            return (Criteria) this;
        }

        public Criteria andStuCreateDateGreaterThan(Date value) {
            addCriterionForJDBCDate("STU_CREATE_DATE >", value, "stuCreateDate");
            return (Criteria) this;
        }

        public Criteria andStuCreateDateGreaterThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("STU_CREATE_DATE >=", value, "stuCreateDate");
            return (Criteria) this;
        }

        public Criteria andStuCreateDateLessThan(Date value) {
            addCriterionForJDBCDate("STU_CREATE_DATE <", value, "stuCreateDate");
            return (Criteria) this;
        }

        public Criteria andStuCreateDateLessThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("STU_CREATE_DATE <=", value, "stuCreateDate");
            return (Criteria) this;
        }

        public Criteria andStuCreateDateIn(List<Date> values) {
            addCriterionForJDBCDate("STU_CREATE_DATE in", values, "stuCreateDate");
            return (Criteria) this;
        }

        public Criteria andStuCreateDateNotIn(List<Date> values) {
            addCriterionForJDBCDate("STU_CREATE_DATE not in", values, "stuCreateDate");
            return (Criteria) this;
        }

        public Criteria andStuCreateDateBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("STU_CREATE_DATE between", value1, value2, "stuCreateDate");
            return (Criteria) this;
        }

        public Criteria andStuCreateDateNotBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("STU_CREATE_DATE not between", value1, value2, "stuCreateDate");
            return (Criteria) this;
        }

        public Criteria andStuUpdateDateIsNull() {
            addCriterion("STU_UPDATE_DATE is null");
            return (Criteria) this;
        }

        public Criteria andStuUpdateDateIsNotNull() {
            addCriterion("STU_UPDATE_DATE is not null");
            return (Criteria) this;
        }

        public Criteria andStuUpdateDateEqualTo(Date value) {
            addCriterionForJDBCDate("STU_UPDATE_DATE =", value, "stuUpdateDate");
            return (Criteria) this;
        }

        public Criteria andStuUpdateDateNotEqualTo(Date value) {
            addCriterionForJDBCDate("STU_UPDATE_DATE <>", value, "stuUpdateDate");
            return (Criteria) this;
        }

        public Criteria andStuUpdateDateGreaterThan(Date value) {
            addCriterionForJDBCDate("STU_UPDATE_DATE >", value, "stuUpdateDate");
            return (Criteria) this;
        }

        public Criteria andStuUpdateDateGreaterThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("STU_UPDATE_DATE >=", value, "stuUpdateDate");
            return (Criteria) this;
        }

        public Criteria andStuUpdateDateLessThan(Date value) {
            addCriterionForJDBCDate("STU_UPDATE_DATE <", value, "stuUpdateDate");
            return (Criteria) this;
        }

        public Criteria andStuUpdateDateLessThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("STU_UPDATE_DATE <=", value, "stuUpdateDate");
            return (Criteria) this;
        }

        public Criteria andStuUpdateDateIn(List<Date> values) {
            addCriterionForJDBCDate("STU_UPDATE_DATE in", values, "stuUpdateDate");
            return (Criteria) this;
        }

        public Criteria andStuUpdateDateNotIn(List<Date> values) {
            addCriterionForJDBCDate("STU_UPDATE_DATE not in", values, "stuUpdateDate");
            return (Criteria) this;
        }

        public Criteria andStuUpdateDateBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("STU_UPDATE_DATE between", value1, value2, "stuUpdateDate");
            return (Criteria) this;
        }

        public Criteria andStuUpdateDateNotBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("STU_UPDATE_DATE not between", value1, value2, "stuUpdateDate");
            return (Criteria) this;
        }

        public Criteria andStuOneIsNull() {
            addCriterion("STU_ONE is null");
            return (Criteria) this;
        }

        public Criteria andStuOneIsNotNull() {
            addCriterion("STU_ONE is not null");
            return (Criteria) this;
        }

        public Criteria andStuOneEqualTo(String value) {
            addCriterion("STU_ONE =", value, "stuOne");
            return (Criteria) this;
        }

        public Criteria andStuOneNotEqualTo(String value) {
            addCriterion("STU_ONE <>", value, "stuOne");
            return (Criteria) this;
        }

        public Criteria andStuOneGreaterThan(String value) {
            addCriterion("STU_ONE >", value, "stuOne");
            return (Criteria) this;
        }

        public Criteria andStuOneGreaterThanOrEqualTo(String value) {
            addCriterion("STU_ONE >=", value, "stuOne");
            return (Criteria) this;
        }

        public Criteria andStuOneLessThan(String value) {
            addCriterion("STU_ONE <", value, "stuOne");
            return (Criteria) this;
        }

        public Criteria andStuOneLessThanOrEqualTo(String value) {
            addCriterion("STU_ONE <=", value, "stuOne");
            return (Criteria) this;
        }

        public Criteria andStuOneLike(String value) {
            addCriterion("STU_ONE like", value, "stuOne");
            return (Criteria) this;
        }

        public Criteria andStuOneNotLike(String value) {
            addCriterion("STU_ONE not like", value, "stuOne");
            return (Criteria) this;
        }

        public Criteria andStuOneIn(List<String> values) {
            addCriterion("STU_ONE in", values, "stuOne");
            return (Criteria) this;
        }

        public Criteria andStuOneNotIn(List<String> values) {
            addCriterion("STU_ONE not in", values, "stuOne");
            return (Criteria) this;
        }

        public Criteria andStuOneBetween(String value1, String value2) {
            addCriterion("STU_ONE between", value1, value2, "stuOne");
            return (Criteria) this;
        }

        public Criteria andStuOneNotBetween(String value1, String value2) {
            addCriterion("STU_ONE not between", value1, value2, "stuOne");
            return (Criteria) this;
        }

        public Criteria andStuTwoIsNull() {
            addCriterion("STU_TWO is null");
            return (Criteria) this;
        }

        public Criteria andStuTwoIsNotNull() {
            addCriterion("STU_TWO is not null");
            return (Criteria) this;
        }

        public Criteria andStuTwoEqualTo(String value) {
            addCriterion("STU_TWO =", value, "stuTwo");
            return (Criteria) this;
        }

        public Criteria andStuTwoNotEqualTo(String value) {
            addCriterion("STU_TWO <>", value, "stuTwo");
            return (Criteria) this;
        }

        public Criteria andStuTwoGreaterThan(String value) {
            addCriterion("STU_TWO >", value, "stuTwo");
            return (Criteria) this;
        }

        public Criteria andStuTwoGreaterThanOrEqualTo(String value) {
            addCriterion("STU_TWO >=", value, "stuTwo");
            return (Criteria) this;
        }

        public Criteria andStuTwoLessThan(String value) {
            addCriterion("STU_TWO <", value, "stuTwo");
            return (Criteria) this;
        }

        public Criteria andStuTwoLessThanOrEqualTo(String value) {
            addCriterion("STU_TWO <=", value, "stuTwo");
            return (Criteria) this;
        }

        public Criteria andStuTwoLike(String value) {
            addCriterion("STU_TWO like", value, "stuTwo");
            return (Criteria) this;
        }

        public Criteria andStuTwoNotLike(String value) {
            addCriterion("STU_TWO not like", value, "stuTwo");
            return (Criteria) this;
        }

        public Criteria andStuTwoIn(List<String> values) {
            addCriterion("STU_TWO in", values, "stuTwo");
            return (Criteria) this;
        }

        public Criteria andStuTwoNotIn(List<String> values) {
            addCriterion("STU_TWO not in", values, "stuTwo");
            return (Criteria) this;
        }

        public Criteria andStuTwoBetween(String value1, String value2) {
            addCriterion("STU_TWO between", value1, value2, "stuTwo");
            return (Criteria) this;
        }

        public Criteria andStuTwoNotBetween(String value1, String value2) {
            addCriterion("STU_TWO not between", value1, value2, "stuTwo");
            return (Criteria) this;
        }

        public Criteria andStuThreeIsNull() {
            addCriterion("STU_THREE is null");
            return (Criteria) this;
        }

        public Criteria andStuThreeIsNotNull() {
            addCriterion("STU_THREE is not null");
            return (Criteria) this;
        }

        public Criteria andStuThreeEqualTo(String value) {
            addCriterion("STU_THREE =", value, "stuThree");
            return (Criteria) this;
        }

        public Criteria andStuThreeNotEqualTo(String value) {
            addCriterion("STU_THREE <>", value, "stuThree");
            return (Criteria) this;
        }

        public Criteria andStuThreeGreaterThan(String value) {
            addCriterion("STU_THREE >", value, "stuThree");
            return (Criteria) this;
        }

        public Criteria andStuThreeGreaterThanOrEqualTo(String value) {
            addCriterion("STU_THREE >=", value, "stuThree");
            return (Criteria) this;
        }

        public Criteria andStuThreeLessThan(String value) {
            addCriterion("STU_THREE <", value, "stuThree");
            return (Criteria) this;
        }

        public Criteria andStuThreeLessThanOrEqualTo(String value) {
            addCriterion("STU_THREE <=", value, "stuThree");
            return (Criteria) this;
        }

        public Criteria andStuThreeLike(String value) {
            addCriterion("STU_THREE like", value, "stuThree");
            return (Criteria) this;
        }

        public Criteria andStuThreeNotLike(String value) {
            addCriterion("STU_THREE not like", value, "stuThree");
            return (Criteria) this;
        }

        public Criteria andStuThreeIn(List<String> values) {
            addCriterion("STU_THREE in", values, "stuThree");
            return (Criteria) this;
        }

        public Criteria andStuThreeNotIn(List<String> values) {
            addCriterion("STU_THREE not in", values, "stuThree");
            return (Criteria) this;
        }

        public Criteria andStuThreeBetween(String value1, String value2) {
            addCriterion("STU_THREE between", value1, value2, "stuThree");
            return (Criteria) this;
        }

        public Criteria andStuThreeNotBetween(String value1, String value2) {
            addCriterion("STU_THREE not between", value1, value2, "stuThree");
            return (Criteria) this;
        }

        public Criteria andStuFourIsNull() {
            addCriterion("STU_FOUR is null");
            return (Criteria) this;
        }

        public Criteria andStuFourIsNotNull() {
            addCriterion("STU_FOUR is not null");
            return (Criteria) this;
        }

        public Criteria andStuFourEqualTo(String value) {
            addCriterion("STU_FOUR =", value, "stuFour");
            return (Criteria) this;
        }

        public Criteria andStuFourNotEqualTo(String value) {
            addCriterion("STU_FOUR <>", value, "stuFour");
            return (Criteria) this;
        }

        public Criteria andStuFourGreaterThan(String value) {
            addCriterion("STU_FOUR >", value, "stuFour");
            return (Criteria) this;
        }

        public Criteria andStuFourGreaterThanOrEqualTo(String value) {
            addCriterion("STU_FOUR >=", value, "stuFour");
            return (Criteria) this;
        }

        public Criteria andStuFourLessThan(String value) {
            addCriterion("STU_FOUR <", value, "stuFour");
            return (Criteria) this;
        }

        public Criteria andStuFourLessThanOrEqualTo(String value) {
            addCriterion("STU_FOUR <=", value, "stuFour");
            return (Criteria) this;
        }

        public Criteria andStuFourLike(String value) {
            addCriterion("STU_FOUR like", value, "stuFour");
            return (Criteria) this;
        }

        public Criteria andStuFourNotLike(String value) {
            addCriterion("STU_FOUR not like", value, "stuFour");
            return (Criteria) this;
        }

        public Criteria andStuFourIn(List<String> values) {
            addCriterion("STU_FOUR in", values, "stuFour");
            return (Criteria) this;
        }

        public Criteria andStuFourNotIn(List<String> values) {
            addCriterion("STU_FOUR not in", values, "stuFour");
            return (Criteria) this;
        }

        public Criteria andStuFourBetween(String value1, String value2) {
            addCriterion("STU_FOUR between", value1, value2, "stuFour");
            return (Criteria) this;
        }

        public Criteria andStuFourNotBetween(String value1, String value2) {
            addCriterion("STU_FOUR not between", value1, value2, "stuFour");
            return (Criteria) this;
        }

        public Criteria andStuFiveIsNull() {
            addCriterion("STU_FIVE is null");
            return (Criteria) this;
        }

        public Criteria andStuFiveIsNotNull() {
            addCriterion("STU_FIVE is not null");
            return (Criteria) this;
        }

        public Criteria andStuFiveEqualTo(String value) {
            addCriterion("STU_FIVE =", value, "stuFive");
            return (Criteria) this;
        }

        public Criteria andStuFiveNotEqualTo(String value) {
            addCriterion("STU_FIVE <>", value, "stuFive");
            return (Criteria) this;
        }

        public Criteria andStuFiveGreaterThan(String value) {
            addCriterion("STU_FIVE >", value, "stuFive");
            return (Criteria) this;
        }

        public Criteria andStuFiveGreaterThanOrEqualTo(String value) {
            addCriterion("STU_FIVE >=", value, "stuFive");
            return (Criteria) this;
        }

        public Criteria andStuFiveLessThan(String value) {
            addCriterion("STU_FIVE <", value, "stuFive");
            return (Criteria) this;
        }

        public Criteria andStuFiveLessThanOrEqualTo(String value) {
            addCriterion("STU_FIVE <=", value, "stuFive");
            return (Criteria) this;
        }

        public Criteria andStuFiveLike(String value) {
            addCriterion("STU_FIVE like", value, "stuFive");
            return (Criteria) this;
        }

        public Criteria andStuFiveNotLike(String value) {
            addCriterion("STU_FIVE not like", value, "stuFive");
            return (Criteria) this;
        }

        public Criteria andStuFiveIn(List<String> values) {
            addCriterion("STU_FIVE in", values, "stuFive");
            return (Criteria) this;
        }

        public Criteria andStuFiveNotIn(List<String> values) {
            addCriterion("STU_FIVE not in", values, "stuFive");
            return (Criteria) this;
        }

        public Criteria andStuFiveBetween(String value1, String value2) {
            addCriterion("STU_FIVE between", value1, value2, "stuFive");
            return (Criteria) this;
        }

        public Criteria andStuFiveNotBetween(String value1, String value2) {
            addCriterion("STU_FIVE not between", value1, value2, "stuFive");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}